Wireless devices are useful appliances that can allow a user to access data and run applications without being physically tethered to a network. Such applications can run the gamut from simple text communications to web browsing to more sophisticated communication programs sharing both video and voice data between users.
Smart phones are one example of a wireless device. Smart phones typically can provide phone and data service through a cell phone carrier. However, such wireless devices are often not limited to a single data pathway. Many wireless devices include circuitry to access other wireless networks (other than cell phone networks). One example is a network governed by one or more versions of the IEEE 802.11 wireless communication specification. Some wireless devices can support multiple cell phone networks (e.g., a wireless device can support CDMA (carrier detect, multiple access) and GSM (Groupe Special Mobile) cell phone networks) as alternative wireless networks.
Since wireless devices can access multiple wireless networks, wireless devices often select a particular wireless network to operate on. Such selections can be made blindly, relying only on the existence of a preferred network and not evaluating other factors that can affect overall user experience. For example, there can be conditions when a preferred network offers slower data throughput because of a noisy communication channel, poor wireless signal quality or other impairments. Clearly, selecting this network would frustrate the user by presenting sluggish responses to programs or user input.
Therefore, what is desired is an effective way to identify and select a wireless network that can improve the user experience.